package com.upcode.weighing.vo.pay.order;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.upcode.weighing.base.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper=false)
public class PayOrderVo extends BaseEntity {
    @JsonSerialize(using= ToStringSerializer.class)
    private Long id;//订单ID
    private Long billId;//账单ID
    private String billCode;//账单编码
    private Integer payStatus;//账单状态 1 待支付 2 支付中 3 已支付 4 已退款 5 支付失败
    private Integer payAmount;//缴费金额
    private Integer payTypes;//缴费系数 1 全额 2 基础 3 历史
    private Integer payChannel;//缴费方式 1 现金 2 支付宝 3微信 4 转账 5 POS机
    private Integer appPayType;//移动端更新标识 1 全额 2 基础 3 补缴
    private LocalDateTime createTime;//创建时间


    public PayOrderVo() {
    }

    public PayOrderVo(Long id, Long billId, String billCode, Integer payStatus, Integer payAmount, Integer payTypes, Integer payChannel, Integer appPayType, LocalDateTime createTime) {
        this.id = id;
        this.billId = billId;
        this.billCode = billCode;
        this.payStatus = payStatus;
        this.payAmount = payAmount;
        this.payTypes = payTypes;
        this.payChannel = payChannel;
        this.appPayType = appPayType;
        this.createTime = createTime;
    }
}
